Terrence Sheppard was in a store near Broadway and 23rd Street when he began exposing himself around 5:15 Tuesday evening, witnesses told Bayonne police.
Sheppard was looking at items on the shelf before he went to the front of the store, laid down and began masturbating, the witnesses said.
A store employee confronted Sheppard, who then stood up, continued masturbating and then left, Bayonne Police Lt. Eric Amato said.
Sheppard was arrested and charged with endangering the welfare of a child, lewdness and sexual assault, according to Amato.
Records show Sheppard was charged with aggravated assault last month after throwing a punch at an officer questioning him about a burglary. He was also charged with shoplifting from the same drug store.
Sheppard was also charged in 2017 with stealing a $2,500 necklace from a jewelry store.
Click here to follow Daily Voice Parsippany-Troy Hills and receive free news updates.